package com.iris.live.services.data.repositories;

import org.springframework.data.repository.NoRepositoryBean;

import java.util.List;


/**
 * Created by wx on 2017/12/27.
 */
@NoRepositoryBean
public interface CommonSearchRepository {
    /**
     * 获取用户名所属大区LIST
     *
     * @param frUserName
     * @param frAuthority
     * @param sensitivity
     * @return
     */
    List getAreaLists(String frUserName, String frAuthority, String sensitivity);

    /**
     * 获取用户名所属PMA
     *
     * @param frUserName
     * @return
     */
    List getPmaLists(String frUserName, String frAuthority, String selRegionCode, String sensitivity);

    /**
     * 获取经销商LIST (针对 LSH,LXH)
     *
     * @param selRegionCode
     * @param selPMACode
     * @return
     */
    List getDealerLists(String selRegionCode, String selPMACode);

    /**
     * 获取经销商LIST (针对 DCH,LVD)
     *
     * @param selRegionCode
     * @return
     */
    public List getDealerLists2(String selRegionCode);

    /**
     * 获取活动类型
     * @return List
     */
    List getActivityTypes();

    /**
     * 获取主导与发起
     * @return List
     */
    List getLeadingAndLaunches();


    /**
     * 获取车系
     *
     * @param selBrand 品牌  @return List
     */
    List getCarSeries(String selBrand);

    /**
     * 获取车型
     *
     * @param selBrand 品牌
     * @param selMotorcycleType 级别   @return List
     */
    List getCarModes(String selBrand, String selMotorcycleType);

    /**
     * 获取金融贷款类型
     * @return List
     */
    List getFinanceLoanTypes();

    /**
     * 获取品牌
     * @return List
     * @param sql
     */
    List getBrands(String sql);

    /**
     * 获取品牌合计
     * @return List
     */
    List getBrandTotals(String sql);

    /**
     * 获取渠道
     * @return List
     */
    List getChannels();

    /**
     * 获取金融机构
     * @return List
     */
    List getFinancialInstitutions();

    /**
     * 获取调研类型
     * @return List
     */
    List getResearchTypes();

    /**
     * 获取问卷版本号
     * @param stage 调研类型
     * @return List
     */
    List getQuestionVersion(String stage);

    /**
     * 获取经销商销售顾问
     * @param userName
     * @return List
     */
    List getSalesConsultants(String userName);

    /**
     * 根据用户名取许可
     * @return
     */
    List getPermitByUserName(String userName);
}
